Transmitter and receiver tracking techniques for user devices in a MIMO network

ABSTRACT

A technique includes (i) receiving a first pilot signal from a base station via a receiver of a client device, or (ii) transmitting a second pilot signal from the client device to the base station via a transmitter of the client device. First time differences and signal quality values for N samples of N respective packets in the first pilot signal are determined. Second time differences and signal quality values are received via the receiver. The second time differences and signal quality values are generated for M samples of M respective packets in the second pilot signal. An offset value is determined based on (i) the first time differences and signal quality values, or (ii) the second time differences and signal quality values. Activation or deactivation times of the receiver or the transmitter or transmission times of the transmitter are adjusted based on the offset value.

FIELD

The present disclosure relates to multiple input multiple output (MIMO)networks, and more particularly to transmission and reception of timingof signals in a MIMO network.

BACKGROUND

The background description provided herein is for the purpose ofgenerally presenting the context of the disclosure. Work of thepresently named inventors, to the extent the work is described in thisbackground section, as well as aspects of the description that may nototherwise qualify as prior art at the time of filing, are neitherexpressly nor impliedly admitted as prior art against the presentdisclosure.

A wireless MIMO network may include one or more base stations andnumerous client devices, such as cellular phones, computers, notepads,tablets, personal data assistants and other mobile devices. In awireless MIMO network, time division multiple access (TDMA) based mediumaccess control is used. TDMA allows multiple client devices to share thesame frequency channel by allocating respective time slots to each ofthe client devices. A base station may control time slot allocation ofthe client devices. Each of the client devices exchanges data with thebase station in the time slots allocated for that client device.

Since the client devices are mobile and thus move between locations,distances between the base station and the client devices changes, aswell as characteristics of transmission mediums between the base stationand the client devices. The characteristics of the transmission mediumsmay include, for example, signal attenuation and interference. As aresult, signal quality (or signal strength) can be negatively affecteddue to propagation advances and/or delays of signals transmitted betweenthe base station and the client devices.

SUMMARY

A computer-implemented technique of tuning at least one of a receiverand a transmitter of a client device is provided. The technique includesat least one of (i) receiving a first pilot signal from a base stationvia the receiver of the client device, and (ii) transmitting a secondpilot signal from the client device to the base station via thetransmitter of the client device. The technique may include determining,via one of a physical layer device (PHY) and a medium access controller(MAC) of the client device, first time differences and first signalquality values for N samples of N respective packets in the first pilotsignal, where N is an integer greater than 1. The technique may includereceiving second time differences and second signal quality values fromthe base station via the receiver of the client device. The second timedifferences and second signal quality values are generated for M samplesof M respective packets in the second pilot signal at the base station,where M is an integer greater than 1.

The technique further includes comparing each of the first timedifferences or the second time differences to a preselected amount oftime in one of the PHY and the MAC. For each of the first timedifferences or the second time differences that is less than or equal tothe preselected amount of time, a complex number is generated based on(i) the corresponding first time difference or second time difference,and (ii) one of the first signal quality values and second signalquality values. The complex numbers are weighted with respective ones ofthe first signal quality values or second signal quality values. Anoffset value is determined based on the weighted complex numbers via oneof the PHY and the MAC. The technique further includes adjusting, viathe PHY and based on the offset value, at least one of (i) an activationtime or a deactivation time of the receiver of the client device, and(ii) a transmission time, an activation time or a deactivation time ofthe transmitter of the client device.

In other features, a computer-implemented technique is provided fortuning at least one of a receiver and a transmitter of a client device.The technique includes at least one of (i) receiving a first pilotsignal from a base station via the receiver of the client device, and(ii) transmitting a second pilot signal from the client device to thebase station via the transmitter of the client device. The technique mayinclude determining, via one of a PHY and a MAC of the client device,first time differences and first signal quality values for N samples ofN respective packets in the first pilot signal, where N is an integergreater than 1.

The technique may further include receiving second time differences andsecond signal quality values from the base station via the receiver ofthe client device. The second time differences and second signal qualityvalues are generated for M samples of M respective packets in the secondpilot signal at the base station, where M is an integer greater than 1.An offset value is determined, via one of the PHY and the MAC, based on(i) the first time differences and the first signal quality values, or(ii) the second time differences and the second signal quality values.The technique further includes adjusting, via the PHY and based on theoffset value, at least one of (i) an activation time or a deactivationtime of the receiver of the client device, and (ii) a transmission time,an activation time or a deactivation time of the transmitter of theclient device.

In other features, a computer-implemented technique of tuning at leastone of a receiver and a transmitter of a client device is provided. Thetechnique includes receiving a pilot signal from the client device via areceiver of a base station. The pilot signal is sampled to determinereceive times for N samples of N respective packets in the pilot signalvia the receiver of the base station, where N is an integer greaterthan 1. The technique further includes determining, via one of aphysical layer device (PHY) and a medium access controller (MAC),parameters including (i) time differences between the receive times andrespective predetermined allocation times for each of the N samples, and(ii) determining a signal quality value for each of the N samples usingone of the PHY and the MAC. The signal quality values are determinedsignal strengths of the pilot signal. The parameters are transmitted tothe client device to adjust at least one of (i) activation times ordeactivation times of a receiver of the client device, and (ii)transmission times, activation times or deactivation times of thetransmitter of the client device.

In other features, a computer-implemented method of tuning a receiver ofa client device is provided. The method includes receiving a pilotsignal from a base station via the receiver of the client device. Timedifferences and signal quality values are determined, via one of aphysical layer device (PHY) and a medium access controller (MAC) of theclient device, for N samples of N respective packets in the pilotsignal, where N is an integer greater than 1. An offset value isdetermined, via one of the PHY and the MAC, based on the timedifferences and the signal quality values. The method further includesadjusting, via the PHY and based on the offset value, an activation timeor a deactivation time of the receiver of the client device.

In other features, a computer-implemented method of tuning a transmitterof a client device is provided. The method includes transmitting a pilotsignal from the client device to a base station via the transmitter ofthe client device. Time differences and signal quality values arereceived from the base station via the receiver of the client device.The time differences and signal quality values are generated for Msamples of M respective packets in the pilot signal at the base station,where M is an integer greater than 1. An offset value is determined, viaone of the PHY and the MAC, based on the time differences and the signalquality values. The method further includes adjusting, via the PHY andbased on the offset value, at least one of a transmission time, anactivation time or a deactivation time of the transmitter of the clientdevice.

In other features, a computer-implemented method of tuning a receiver ofa client device is provided. The method includes receiving a pilotsignal from the client device via a receiver of a base station. Thepilot signal is sampled to determine receive times for N samples of Nrespective packets in the pilot signal via the receiver of the basestation, where N is an integer greater than 1. The method furtherincludes determining, via one of a physical layer device (PHY) and amedium access controller (MAC), parameters including: (i) timedifferences between the receive times and respective predeterminedallocation times for each of the N samples; and (ii) determining asignal quality value for each of the N samples using one of the PHY andthe MAC. The signal quality values are determined signal strengths ofthe pilot signal. The parameters are transmitted to the client device toadjust activation times or deactivation times of the receiver of theclient device.

In other features, a computer-implemented method of tuning a transmitterof a client device is provided. The method includes receiving a pilotsignal from the client device via a receiver of a base station. Thepilot signal is sampled to determine receive times for N samples of Nrespective packets in the pilot signal via the receiver of the basestation, where N is an integer greater than 1. The method furtherincludes determining, via one of a physical layer device (PHY) and amedium access controller (MAC), parameters including: (i) timedifferences between the receive times and respective predeterminedallocation times for each of the N samples; and (ii) determining asignal quality value for each of the N samples using one of the PHY andthe MAC. The signal quality values are determined signal strengths ofthe pilot signal. The parameters are transmitted to the client device toadjust transmission times, activation times or deactivation times of thetransmitter of the client device.

Further areas of applicability of the present disclosure will becomeapparent from the detailed description, the claims and the drawings. Thedetailed description and specific examples are intended for purposes ofillustration only and are not intended to limit the scope of thedisclosure.

BRIEF DESCRIPTION OF DRAWINGS

The present disclosure will become more fully understood from thedetailed description and the accompanying drawings, wherein:

FIG. 1 is a functional block diagram of a wireless MIMO network inaccordance with the present disclosure;

FIG. 2 is a functional block diagram of a portion of the wireless MIMOnetwork of FIG. 1;

FIG. 3 is a functional block diagram of a base station tracking modulein accordance with the present disclosure; and

FIG. 4 is a functional block diagram of a client tracking module inaccordance with the present disclosure;

FIG. 5 is a flow chart of a signal timing technique including clientreceiver tuning in accordance with the present disclosure; and

FIG. 6 is a flow chart of a signal timing technique including clientreceiver and transmitter tuning in accordance with the presentdisclosure.

DESCRIPTION

In FIG. 1, a functional block diagram of a wireless MIMO network 10 isshown. The wireless MIMO network 10 includes one or more base stations(one base station 12 is shown) and multiple client devices 14. The basestation 12 and the client devices 14 operate to adjust activation anddeactivation times of receivers and transmitters of the client devices14. This includes adjusting reception and transmission timing of theclient devices 14. Examples of receivers and transmitters of a clientdevice are shown in FIG. 2.

The base station 12 and the client devices 14 operate to adjustactivation and deactivation timing of the receivers of the clientdevices 14, transmission timing of the transmitters of the clientdevices 14, and activation and deactivation timing of the transmittersof the client devices 14. As an example, when a client device moves awayfrom a base station, a propagation delay may be introduced and/or thetransmission medium between the client device and the base station maychange. To compensate for the propagation delay, transmission times andreception times of the client device may be adjusted. For example, thetransmitter of the client device may transmit earlier to account for theintroduced propagation delay such that the transmitted signal arrives atthe base station at an appropriate time. Activation of the receiver ofthe client device may be delayed to account for the increased time for asignal to be transmitted from the base station to the client device.This prevents the receiver from being activated too early and conservespower by minimizing the amount of time the receiver is activated.

Transmitter and receiver timing of the client devices 14 are adjustedfor compound signals transmitted from the client devices 14 to the basestation 12 and transmitted from the base station 12 to the clientdevices 14. The compound signals may be time division multiple access(TDMA) signals. Each of the compound signals may include a data signal(e.g., user data signal) and a pilot (or reference) signal. The compoundsignals may also be transmitted between the base station 12 and theclient devices 14 in television (TV) whitespace at, for example, 600-800MHz or at other whitespace or signal transmission frequencies and/orfrequency ranges. The other signal transmission frequency ranges may besuitable for transmission of TDMA signals in a MIMO network between abase station and client devices.

The base station 12 and each of the client devices 14 may be spreadspectrum devices that transmit signals to each other using one or moreantennas and receive via respective wideband receivers. The base station12 may transmit using multiple antennas to communicate with one or moreof the client devices 14 at the same time. Each of the client devices 14may communicate using one or more antennas. Signals transmitted betweenthe base station 12 and the client devices 14 may be transmitted overavailable TV whitespace frequencies (or available TDMA frequencies),which is referred to as a channel. The channel may include all availableand/or selected TV whitespace frequencies unused by TV broadcastproviders. The base station 12 and each of the client devices 14 maycommunicate with each other via the channel using all or a subset of thefrequencies assigned to the channel. The same data (or content) may notbe transmitted over each of the assigned frequencies, but rather may bespread across the assigned frequencies and transmitted from the basestation 12 and received by each of the client devices 14. Each of theclient devices 14 may transmit data over the assigned frequencies to thebase station 12.

The base station (BS) 12 includes a BS tracking module 16 that dividestransmission time allocated to the client devices 14 into frames. Eachof the frames may have, for example, 32 slots. Each of the slots mayhave, for example, 64 symbols. Each of the symbols may have a symbolperiod of, for example, 17 microseconds. Half of the symbols (or 32 ofthe 64 symbols) are used for uplink signals transmitted from the clientdevices to the base station. The other half of the symbols (other 32 ofthe 64 symbols) are used for downlink signals transmitted from the BS 12to the client devices 14.

To maintain each of the client devices in a “client active” state, twosymbols (identified as static symbols) may be allocated for each of theclient devices 14. The first static symbol is used for uplinktransmissions. The second static symbol is used for downlinktransmission. This allows each of the client devices 14 to access achannel shared by the client devices 14 at least once per frame.

The BS tracking module 16 tracks compound signals transmitted from eachof the client devices 14 to the BS 12 to determine parameters associatedwith these compound signals. The BS tracking module 16 may also trackparameters associated with compound signals transmitted from the BS 12to the client devices 14. The parameters of the compound signalstransmitted between the BS 12 and the client devices 14 may include, forexample, arrival times, time differences, and signal quality values. Thearrival times are times that compound signals are received and sampledat the BS 12 and/or at the client devices 14. The time differences aredifferences between the arrival times and respective allocated times ofthe client devices 14 and/or differences between the arrival times andone or more previous adjustment time(s). These and other parameters aretracked by the BS tracking module 16 and described in further detailbelow.

The BS tracking module 16 may perform client receiver and/or clienttransmitter tuning based on the parameters. This may includetransmitting a pilot signal, a parameters signal, a control signal orother signal(s) to the client devices 14 and/or receiving a pilot signaland/or parameters from the client devices 14. The pilot signals may betransmitted at carrier frequencies and modulated with the respectivedata signals. The pilot signals may be used as reference signals by theBS 12 to determine any of the parameters disclosed herein.

The client devices 14 may be mobile devices or stationary devices. Eachof the client devices 14 includes a client tracking module 18. Each ofthe client tracking modules 18 monitors compound signals transmittedfrom the BS 12 to a respective one of the client devices 14 to determineparameters associated with these compound signals. The parameters mayinclude, for example, the arrival times, time differences, and signalquality values mentioned above and/or other parameters described below.Each of the client tracking modules 18 may perform client receivertuning based on pilot signals, parameter signals, timing signals, and/orother signals received from the BS 12.

The networks disclosed herein may each be identified as a system. Forexample, the wireless MIMO network 10 may be identified respectively asa wireless MIMO system.

In FIG. 2, a portion 30 of the wireless MIMO network 10 is shown. Theportion 30 includes the BS 12 and one of the client devices 14. The BS12 includes a BS control module 32, a medium access controller (MAC) 34and a physical layer device (PHY) 36. The BS control module 32 maygenerate packets in the form of data signals (e.g., user data signals)to be transmitted to the client device 14 and receive other data signalsfrom the client device 14 via the BS MAC 34 and BS PHY 36. The BS MAC 34may include the BS tracking module 16 and a BS packet handling module38. The BS tracking module 16 may generate BS pilot signals to becombined with data signals and transmitted as compound signals to theclient device 14. The BS tracking module 16 may also track parametersdisclosed herein and perform client receiver and/or transmitter tuningas disclosed below.

The BS packet handling module 38 may perform signal conditioning,prepare packets for transmission on a medium or over a medium and/ornetwork between the BS 12 and the client device 14, and/or preparepackets received from the client device 14 for the BS tracking module16. The BS PHY 36 may include hardware, such as a BS transmitter 40 anda BS receiver 42.

The client device 14 includes a client control module 44, a client MAC46 and a client PHY 48. The client control module 44 may generatepackets in the form of data signals to be transmitted to the clientdevice 14 and receive other data signals from the client device 14 viathe client MAC 46 and client PHY 48. The client MAC 46 may include theclient tracking module 18 and a client packet handling module 50. Theclient tracking module 18 may generate client pilot signals to becombined with data signals and transmitted as compound signals to the BS12. The client tracking module 18 may also track parameters disclosedherein and perform client receiver and transmitter tuning as disclosedbelow.

The client packet handling module 50 may perform signal conditioning,prepare packets for transmission on the medium or over a network betweenthe BS 12 and the client device 14, and/or prepare packets received fromthe base station for the client tracking module 18. The client PHY 48may include hardware, such as a client transmitter 52 and a clientreceiver 54.

Although the BS tracking module 16 is shown in the BS MAC 34, the BStracking module 16 and/or one or more module(s) of the BS trackingmodule 16 may alternatively be included in the BS PHY 36. Similarly,although the client tracking module 18 is shown in the client MAC 46,the client tracking module 18 and/or one or more module(s) of the clienttracking module 18 may alternatively be included in the client PHY 48.

Referring now also to FIGS. 3-4, the BS tracking module 16 and theclient tracking module 18 are shown. The BS tracking module 16 mayinclude a BS pilot generating module 100, a BS sample timing module 102,and a BS memory 104. The client tracking module 18 may include a clientsampling module 106, a client propagation module 108, a clientdifference module 110, a client signal quality module 112, a clientweight module 114, a client complex number module 116, a clientsummation module 118, an client offset module 120, a client receivertiming module 122, a client time adjustment module 124, and a clientmemory 126.

Although the BS memory 104 is shown as being included in the BS trackingmodule 16, the BS memory 104 may be included in the BS control module32, the BS MAC 34, and/or the BS PHY 36. The BS memory 104 may beseparate from the BS 12, the BS tracking module 16, the BS controlmodule 32, the BS MAC 34 and/or the BS PHY 36 and accessed accordingly.Also, although the client memory 126 is shown as being included in theclient tracking module 18, the client memory 126 may be included in theclient control module 44, the client MAC 46, and/or the client PHY 48.The client memory 126 may be separate from the client device 14, theclient tracking module 18, the client control module 44, the client MAC46 and/or the client PHY 48 and accessed accordingly.

The above-described wireless MIMO network 10 may be operated usingnumerous techniques, example techniques (or computer-implemented methodsor algorithms) are provided in FIGS. 5 and 6. In FIG. 5, a signal timingtechnique including client receiver tuning is shown. Although thefollowing tasks are primarily described with respect to theimplementations of FIGS. 1-4, the tasks may be easily modified to applyto other implementations of the present disclosure. The tasks may beiteratively performed. Any of the values used and/or determined in thefollowing tasks may be stored in the client memory 126 and/or accessedby any of the modules and devices of the client device 14. The techniquemay begin at 200.

At 202, the BS 12 may generate a compound signal COMP_(BS) including adata signal and a pilot signal PilotBS with corresponding packets viathe BS tracking module 16, the BS control module 32 and the BS pilotgenerating module 100. The BS tracking module 16 may combine the datasignal and the pilot signal PilotBS to form the compound signalCOMP_(BS). At 204, the compound signal COMP_(BS) is transmitted from theBS 12 to the client device 14.

At 206, the client sampling module 106, the client MAC 46 and/or theclient PHY 48 may receive and sample the compound signal COMP_(BS) togenerate a sample at each of times t₁−t_(n) (referred to as arrival orreceive times t₁−t_(n)), where n is the total number of samples (i.e.signals or packets). The client sampling module 106, the client MAC 46and/or the client PHY 48 may sample the compound signal COMP_(BS) basedon a preselected amount of time T. The preselected amount of time T maybe equal to a period of a frame (e.g., 40 milliseconds (ms)). Thepreselected amount of time T may be set by, for example, the BS sampletiming module 102 and transmitted to the client device 14. Thepreselected amount of time T may be included in the pilot signal PilotBSand/or stored in the client memory 126.

At 208, the client propagation module 108, the client MAC 46 and/or theclient PHY 48 compares the sample times t₁−t_(n) to predetermined orallocated times t_(A1)−t_(An) to generate time differences D₁−D_(n),where n is the number of arrival times or samples. The allocated timest_(A1)−t_(An) are times allocated to the client device 14 by the BS 12for uplink and downlink of signals between the client device 14 and theBS 12. The client propagation module 108 may store or have access to areference pilot signal and compare the reference pilot signal to thepilot signal PilotBS to determine the time differences D₁−D_(n). Thetime differences D₁−D_(n) may be equal to or based on differences (i)between the sample times t₁−t_(n) and a predetermined time PRED_(CD)and/or (ii) between the sample times t₁−t_(n) and respective ones ofallocated times t_(A1)−t_(An). The predetermined time PRED_(CD) may beprovided to compare each of the sample times t₁−t_(n) to the samepredetermined or reference time. The allocated times t_(A1)−t_(An) maybe stored in the client memory 126 and/or received from the BS 12, forexample, in the data signal or pilot signal PilotBS.

The time differences D₁−D_(n) may alternatively be equal to or based ondifferences (i) between each of the sample times t₁−t_(n) and a previousadjustment time PA_(CD) or (ii) between each of the sample timest₁−t_(n) and a respective one of the last adjustment times t₁−t_(X),where X is an integer that may be equal to the number of samples n. Theprevious adjustment time PA_(CD) identifies a time when an offset valueOS_(CD) was most recently determined by the client offset module 120and/or a time when receiver activation or deactivation timing wasadjusted based on the offset value OS_(CD). Each of the last adjustmenttimes t₁−t_(X) may: be equal to the previous adjustment time PA_(CD);identify a time when the offset value OS_(CD) was most recentlydetermined relative to a corresponding one of the sample times t₁−t_(n);and/or identify a last time when receiver activation or deactivationtiming was adjusted based on the offset value OS relative to one of thesample times t₁−t_(n). Other example offset values are provided below onwhich the last adjustment times t₁−t_(X) may be determined.

At 210, the client difference module 110, the client MAC 46 and/or theclient PHY 48 may determine which of the time differences D₁−D_(n) foreach of the samples satisfy a predetermined criterion. For example, theclient difference module 110, the client MAC 46 and/or the client PHY 48may determine which of the time differences D₁−D_(n) are less than orequal to the preselected amount of time T, which is defined above. Theclient difference module 110, the client MAC 46 and/or the client PHY 48may determine whether a current sample time t (one of the sample timest₁−t_(n)) satisfies one or more of equations 1-3.t _(X) −t≦T  (1)PA_(CD) −t≦T  (2)PRED_(CD) −t≦T  (3)The time differences D₁−D_(n) that satisfy equation 1 are represented astime differences D_(X1)−D_(Xn). The time differences D_(X1)−D_(Xn) are asubset of the time differences D₁−D_(n).

At 212, the client complex number module 116, the client MAC 46 and/orthe client PHY 48 determines complex numbers C₁−C_(n) based on the timedifferences D_(X1)-D_(Xn). The complex numbers C₁−C_(n) may berepresented by equation 4, where i is equal to √{square root over (−1)},and each one of the complex numbers C₁−C_(n) has a real part (e.g.,cos(D_(X1))) and an imaginary part (e.g., i·sin(D_(X1))).C ₁ , . . . ,C _(n)=cos(D _(X1))+i·sin(D _(X1)), . . . ,cos(D_(Xn))+i·sin(D _(Xn))  (4)

At 214, the client signal quality module 112, the client MAC 46 and/orthe client PHY 48 determines signal strengths (or quality) valuesS₁-S_(n) (referred to as weights) based on the pilot signal PilotBS. Thesignal quality values S₁-S_(n) may be magnitudes that are equal to,proportional to, or determined as a function of signal-to-noise ratios(SNRs) (or signal-to-interference ratios (SIRs)) and a reduced bit errorrates (BERs), or other signal quality characteristics of the pilotsignal PilotBS. The client signal quality module 112, the client MAC 46and/or the client PHY 48 may determine the signal qualitycharacteristics.

At 216, the client weight module 114, the client MAC 46 and/or theclient PHY 48 determines weighted values W₁−W_(n) based on the complexnumbers C₁−C_(n) and the signal quality values S₁-S_(n). The weightedvalues W₁−W_(n) may be represented by equation 5 and/or 6.W ₁ , . . . W _(n) =S ₁ C ₁ , . . . ,S _(n) C _(n)  (5)W ₁ , . . . ,W _(n) =S ₁[cos(D _(X1))+i·sin(D _(X1))], . . . ,S_(n)[cos(D _(Xn))+i·sin(D _(Xn))]  (6)Samples with a larger (or better) signal quality value may be weightedmore (larger weight value) than samples with a smaller signal qualityvalue.

At 218, the client summation module 118, the client MAC 46 and/or theclient PHY 48 determines a sum CS based on the weighted values W₁−W_(n).The sum CS may be represented by equation 7 and/or 8.CS=W ₁ +W ₂ + . . . +W _(n)  (7)CS=S ₁[cos(D _(X1))+i·sin(D _(X1))]+ . . . +S _(n)[cos(D _(Xn))+i·sin(D_(Xn))]  (8)When using equations 7 and 8, the cosine terms of the complex numbersmay be summed to provide a cosine sum and the sine terms of the complexnumbers may be summed to provide a sine sum. The sum CS may be equal toa sum of the cosine sum and the sine sum.

At 220, the client offset module 120, the client MAC 46 and/or theclient PHY 48 determines a propagation advance period or a propagationdelay period, which may be equal to the offset value OS_(CD). The offsetvalue OS_(CD) may be determined using equation 9, where K is a constant,which may be a predetermined value and/or set by a control module of theclient device 14.OS _(CD) =K·arg(CS)  (9)When using equation 9, the client offset module 120, the client MAC 46and/or the client PHY 48 sets the offset value OS_(CD) equal to theconstant K multiplied by an argument of the sum CS.

At 222, the client receiver timing module 122, the client MAC 46 and/orthe client PHY 48 may generate a receiver signal REC to adjustactivation times and/or deactivation times of the client receiver 54based on the offset value OS_(CD) and/or one of the other parametersused to determine the offset value OS_(CD). The receiver signal REC mayindicate the activation and/or deactivation times as receiver timingvalues 223. The activation and/or deactivation times of the clientreceiver 54 may be delayed or advanced from current activation and/ordeactivation times by an amount of the offset value OS_(CD). This delaysor advances periods and/or changes durations of the periods when theclient receiver 54 is receiving signals from the BS 12. The receiversignal REC may be received by the client receiver 54, the client PHY 48,and/or a control module controlling power to the client receiver 54. Thecontrol module may be, for example, the client control module 44, acontrol module in the client MAC 46, the client PHY 48, or clientreceiver 54, or another control module.

At 224, the client time adjustment module 124, the client MAC 46 and/orthe client PHY 48 determines the previous adjustment time PA or one ofthe last adjustment times t₁−t_(X). The client time adjustment module124, the client MAC 46 and/or the client PHY 48 may determine the timesPA, t₁−t_(X) based on the offset value OS_(CD), the receive signal REC,and/or times when the offset value OS_(CD) and/or the receive signal RECwere last updated. The times PA, t₁−t_(X) may be set equal to a timewhen the offset signal OS_(CD) and/or the receive signal REC were lastupdated. Each of the last adjustment times t₁−t_(X) may be set equal toa time when the offset value OS_(CD) or the receive signal REC was lastupdated relative to a corresponding sample time t₁−t_(n). This providesupdated last adjustment times which may be used when determiningsubsequent time differences.

As described, the activation and/or deactivation timing of the clientreceiver 54 is adjusted based on and/or as a function of variousparameters, such as the time differences D₁−D_(n), the time differencesD_(X1)−D_(Xn), the complex numbers C₁−C_(n), the signal quality valuesS₁−S_(n), the weighted values W₁−W_(n), the sum CS and the offset valueOS_(CD). This activation and deactivation timing adjustment may beperformed by the client receiver 54 and/or client PHY 48, for example,during each frame, periodically, randomly, and/or every predeterminednumber of frames. The activation and deactivation timing adjustmentdelays or advances periods when the client receiver is turned ON(active) and is receiving signals from the BS 12.

At 226, the client MAC 46 and/or the client PHY 48 may determine whetheranother signal (e.g., compound signal) is received from the BS 12. Themethod may end at 228 or return to task 206 when another signal isreceived, as shown.

Referring now to FIGS. 3, 4 and 6, another signal timing techniqueincluding client receiver and transmitter tuning is shown. The BStracking module 16 may further include a BS sampling module 250, a BSpropagation module 252, a BS difference module 254, a BS signal qualitymodule 256, a BS weight module 258, a BS complex number module 260, a BSsummation module 262, a BS offset module 264, and a BS time adjustmentmodule 266. The client tracking module 18 may further include a clientpilot generating module 270 and a client transmitter timing module 272.

Although the following tasks are primarily described with respect to theimplementations of FIGS. 1-4, the tasks may be easily modified to applyto other implementations of the present disclosure. The tasks may beiteratively performed. Any of the values used and/or determined in thefollowing tasks may be stored in the memories 104, 126 and/or accessedby any of the modules and devices of the BS 12 and/or client device 14.The technique may begin at 300.

At 302, the client device 14 may generate a compound signal COMP_(CD)including a data signal and a pilot signal PilotCD with correspondingpackets via the client tracking module 18, client control module 44 andthe client pilot generating module 270. The client tracking module 18may combine the data signal and the pilot signal PilotCD to form thecompound signal COMP_(CD). At 304, the compound signal COMP_(CD) istransmitted from the client device 14 to the BS 12.

At 306, the BS sampling module 250, the BS MAC 34 and/or the BS PHY 36may receive and sample the compound signal COMP_(CD) to generate asample at each of times t₁−t_(m) (referred to as arrival or receivetimes t₁−t_(m)), where m is the total number of samples (i.e. signals orpackets). The BS sampling module 250, the BS MAC 34 and/or the BS PHY 36may sample the compound signal COMP_(CD) based on the preselected amountof time T, which is defined above. The preselected amount of time T maybe set by, for example, the BS sample timing module 102. The preselectedamount of time T may be stored in the BS memory 104.

At 308, the BS propagation module 252, the BS MAC 34 and/or the BS PHY36 compares the sample times t₁−t_(m) to predetermined or allocatedtimes t_(A1)−t_(Am) to generate time differences D₁−D_(m), where m isthe number of arrival times or samples. The client propagation module108 may store or have access to a reference pilot signal and compare thereference pilot signal to the pilot signal PilotBS to determine the timedifferences D₁−D_(n). The time differences D₁−D_(m) may be equal to orbased on differences (i) between the sample times t₁−t_(m) and apredetermined time PRED_(BS) and/or (ii) between the sample timest₁−t_(m) and respective ones of allocated times t_(A1)−t_(Am). Thepredetermined time PRED_(BS) may be provided to compare each of thesample times t₁−t_(m) to the same predetermined or reference time. Theallocated times t_(A1)−t_(Am) may be stored in the BS memory 104. Theallocated times t_(A1)−t_(Am) are times allocated to the client device14 by the BS 12 for uplink and downlink of signals between the clientdevice 14 and the BS 12.

The time differences D₁−D_(m) may alternatively be equal to or based ondifferences (i) between each of the sample times t₁−t_(m) and a previousadjustment time PA_(BS) or (ii) between each of the sample timest₁−t_(m) and a respective one of last adjustment times t₁−t_(Y), where Yis an integer that may be equal to the number of samples m. The previousadjustment time PA_(BS) identifies a time when an offset value OS_(BS)was most recently determined by the BS 12. Each of the last adjustmenttimes t₁−t_(Y) may: be equal to the previous adjustment time PA_(BS);and/or identify a time when the offset value OS_(BS) was most recentlydetermined relative to a corresponding one of the sample times t₁−t_(m).

At 310, the BS difference module 254, the BS MAC 34 and/or the BS PHY 36may determine which of the time differences D₁−D_(m) for each of thesamples satisfy a predetermined criterion. For example, the BSdifference module 254, the BS MAC 34 and/or the BS PHY 36 may determinewhich of the time differences D₁−D_(m) are less than or equal to thepreselected amount of time T, which is defined above. The BS differencemodule 254, the BS MAC 34 and/or the BS PHY 36 may determine whether acurrent sample time t (one of the sample times t₁−t_(m)) satisfies oneor more of equations 10-12.t _(Y) −t≦T  (10)PA_(BS) −t≦T  (11)PRED_(BS) −t≦T  (12)The time differences D₁−D_(m) that satisfy equation 1 are represented astime differences D_(Y1)−D_(Ym). The time differences D_(Y1)−D_(Ym) are asubset of the time differences D₁−D_(m).

At 312, the BS complex number module 260, the BS MAC 34 and/or the BSPHY 36 determines complex numbers C₁−C_(m) based on the time differencesD_(Y1)−D_(Ym). The complex numbers C₁−C_(m) may be represented byequation 13, where i is equal to √{square root over (−1)}, and each oneof the complex numbers C₁−C_(m) has a real part (e.g., cos(D_(Y1))) andan imaginary part (e.g., i·sin(D_(Y1))).C ₁ , . . . ,C _(m)=cos(D _(Y1))+i·sin(D _(Y1)), . . . ,cos(D_(Ym))+i·sin(D _(Ym))  (13)

At 314, the BS signal quality module 256, the BS MAC 34 and/or the BSPHY 36 determines signal strengths (or quality) values S₁−S_(n)(referred to as weights) based on the pilot signal PilotCD. The signalquality values S₁−S_(n) may be magnitudes that are equal to,proportional to, or determined as a function of SNRs, BERs, SIRs, orother signal quality characteristics of the pilot signal PilotCD. The BSsignal quality module 256, the BS MAC 34 and/or the BS PHY 36 maydetermine the signal quality characteristics.

At 316, the BS weight module 258, the BS MAC 34 and/or the BS PHY 36determines weighted values W₁−W_(m) based on the complex numbersC₁−C_(m) and the signal quality values S₁−S_(m). The weighted valuesW₁−W_(m) may be represented by equation 14 and/or 15.W ₁ , . . . ,W _(m) =S ₁ C ₁ , . . . ,S _(m) C _(m)  (14)W ₁ , . . . ,W _(m) =S ₁[cos(D _(Y1))+i·sin(D _(Y1))], . . . ,S_(m)[cos(D _(Ym))+i·sin(D _(Ym))]  (15)Samples with a larger (or better) signal quality value may be weightedmore (have a larger weight value) than samples with a smaller signalquality value.

At 318, the BS summation module 262, the BS MAC 34 and/or the BS PHY 36determines a sum CS based on the weighted values W₁−W_(m). The sum CSmay be represented by equation 16 and/or 17.CS=W ₁ +W ₂ + . . . +W _(m)  (16)CS=S ₁[cos(D _(Y1))+i·sin(D _(Y1))]+ . . . +S _(m)[cos(D _(Ym))+i·sin(D_(Ym))]  (17)When using equations 16 and 17, the cosine terms of the complex numbersmay be summed to provide a cosine sum and the sine terms of the complexnumbers may be summed to provide a sine sum. The sum CS may be equal toa sum of the cosine sum and the sine sum.

At 320, the BS offset module 264, the BS MAC 34 and/or the BS PHY 36determines a propagation advance period or a propagation delay period,which may be referred to as an offset value OS_(BS). The offset valueOS_(BS) may be determined using equation 18, where K is a constant,which may be a predetermined value and/or set by a control module of theBS 12.OS _(BS) =K·arg(CS)  (18)When using equation 18, the BS offset module 264, the BS MAC 34 and/orthe BS PHY 36 sets the offset value OS_(BS) equal to the constant Kmultiplied by an argument of the sum CS.

At 322, the BS time adjustment module 266, the BS MAC 34 and/or the BSPHY 36 determines the previous adjustment time PA_(BS) or one of thelast adjustment times t₁−t_(Y). The BS time adjustment module 266, theBS MAC 34 and/or the BS PHY 36 may determine the times PA_(BS), t₁−t_(Y)based on the offset value OS_(BS) and/or times when the offset valueOS_(BS) was last updated. The times PA_(BS), t₁−t_(Y) may be set equalto a time when the offset value OS_(BS) was last updated. Each of thelast adjustment times t₁−t_(Y) may be set equal to a time when theoffset value OS_(BS) was last updated relative to a corresponding one ofthe sample times t₁−t_(m).

At 324, the above determined parameters, such as the receive timest₁−t_(m), the time differences D₁−D_(m), time differences D_(Y1)-D_(Ym),the complex numbers C₁−C_(m), the signal quality values S₁−S_(m), theweighted values W₁−W_(m), the offset value OS_(BS), the previousadjustment time PA_(BS), and/or the last adjustment times t₁−t_(Y) maybe indicated in a data field of the compound signal COMP_(BS), the datasignal, and/or the pilot signal PilotBS and transmitted to the clientdevice 14.

The BS 12 may also or alternatively send static symbols in each frametransmitted to the client device 14 to provide the client device withadjustment values(s) to adjust: the receiver activation and/ordeactivation times of the client receiver 54; transmission times of theclient transmitter 52; and/or transmitter activation and/or deactivationtimes of the client transmitter 52. In this manner, the BS 12 mayinstruct the client device 14 to perform receiver and/or transmittertuning. The BS tracking module 16 may compute the adjustment value(s)when a static symbol to be transmitted to the client device 14 isgenerated. Upon receiving packets with the adjustment amount(s), theclient device 14 tunes the client receiver 54 and/or client transmitter52 accordingly, as described below.

At 326, the client sampling module 106, the client receiver 54, theclient MAC 46 and/or the client PHY 48 may receive the compound signalCOMP_(BS) and/or the static symbols. At 327, the client MAC 46 and/orthe client PHY 48 may perform the method of FIG. 5 and/or the followingtasks based on the parameters provided in the compound signal COMP_(BS)and/or based on the static symbols. This may include determining anoffset value (e.g., the offset value OS_(CD) or OS_(BS)) based on theparameters provided at 326. The offset value may be determined asdescribed above based on and/or as a function of: the parametersreceived from the BS 12 at the client device 14; times that packets ofthe compound signal COMP_(BS) having the parameters and/or signalquality values arrive at the client device 14; a stored previousadjustment time PA (e.g., one of the previous adjustment times PA_(CD),PA_(BS)); and/or the preselected amount of time T. The previousadjustment time PA may identify: a time when an offset value was mostrecently determined; a time when client receiver activation and/ordeactivation times were last adjusted; a time when transmission timingand/or client transmitter activation and/or deactivation times were lastadjusted. The previous adjustment time PA and the preselected amount oftime T may be determined by the BS 12 and transmitted to the clientdevice 14 or may be determined by and/or stored in the client deice 14.

At 328, the client receiver timing module 122, the client MAC 46 and/orthe client PHY 48 may generate the receiver signal REC to adjustreceiver activation times and/or receiver deactivation times of theclient receiver 54 based on one or more of the parameters provided inthe compound signal COMP_(BS) and/or based on the static symbols. Thereceiver signal REC may indicate the activation and/or deactivationtimes as the receiver timing values 223. The activation and/ordeactivation times of the client receiver 54 may be delayed or advancedfrom current activation and/or deactivation times by an amount of theoffset value determined at 327. This delays or advances periods and/orchanges durations of the periods when the client receiver 54 isreceiving signals from the BS 12. The receiver signal REC may bereceived by the client receiver 54, the client PHY 48, and/or a controlmodule controlling power to the client receiver 54. The control modulemay be, for example, the client control module 44, a control module inthe client MAC 46, the client PHY 48, or client receiver 54, or anothercontrol module.

At 330, the client transmitter timing module 272, the client MAC 46and/or the client PHY 48 may generate a transmitter signal TRAN toadjust transmission times, an activation time and/or deactivation timeof the client transmitter 52 based on one or more of the parametersprovided in the compound signal COMP_(BS). The transmitter signal TRANmay indicate the transmission times, transmitter activation time and/ortransmitter deactivation time as transmitter timing values 331. Thetransmission times, activation times and/or deactivation times of theclient transmitter 52 may be delayed or advanced from current respectivetimes by an amount of the offset value determined at 327. This delays oradvances periods and/or changes durations of the periods when the clienttransmitter is transmitting signals to the BS 12.

The adjustment in transmission times, activation times and/ordeactivation times may be performed by the client transmitter 52 and/orclient PHY 48, for example, during each frame, periodically, randomly,and/or every predetermined number of frames. The transmitter signal TRANmay be received by the client transmitter 52, the PHY 48, and/or acontrol module controlling power to the client transmitter 52. Thecontrol module may be, for example, the client control module 44, acontrol module in the client MAC 46, the client PHY 48, or clienttransmitter 52, or another control module.

At 332, the client time adjustment module 124, the client MAC 46 and/orthe client PHY 48 determines the previous adjustment time PA_(CD) or oneof the last adjustment times t₁−t_(X). The client time adjustment module124, the client MAC 46 and/or the client PHY 48 may determine the timesPA, t₁−t_(X) based on the offset signal determined at 327, the receiversignal REC, the transmitter signal TRAN, and/or times when the offsetvalue, the receiver signal REC and/or the transmitter signal TRAN werelast updated. The times PA, t₁−t_(X) may be set equal to a time when theoffset value, the receiver signal REC and/or the transmitter signal TRANwere last updated. Each of the last adjustment times t₁−t_(X) may be setequal to a time when the offset signal, the receive signal REC and/orthe transmitter signal TRAN was last updated relative to a correspondingsample time t₁−t_(n). This provides updated last adjustment times whichmay be used when determining subsequent time differences.

At 334, the BS MAC 34 and/or the BS PHY 36 may determine whether anothersignal is received from the client device 14. The method may end at 336or return to task 306 when another signal is received, as shown.

The above-described tasks of FIGS. 5 and 6 are meant to be illustrativeexamples; the tasks may be performed sequentially, synchronously,simultaneously, continuously, during overlapping time periods or in adifferent order depending upon the application. Also, any of the tasksmay not be performed or skipped depending on the implementation and/orsequence of events.

Further in the above described tasks of FIGS. 5 and 6, the client device14 may request additional symbols (or time allocated for the clientdevice 14 in each frame) and/or allocated time slots. The client device14 may transmit the request to the BS 12 and receive a response signalfrom the BS 12 identifying the allocated symbols and/or time slots. Theclient device 14 may then, using the above techniques, determine theoffset value OS_(CD) based on parameters associated with samples ofsignals transmitted at times of the additional symbols and/or allocatedtime slots.

The techniques described herein account for propagation advances and/ordelays to maximize signal strength. This may include providing animproved SNR, SIR, and/or BER. The techniques disclosed include tuning aclient receiver and a client transmitter. Tuning the client receiverincludes adjusting activation and deactivation timing of the receiver.Tuning the client transmitter includes adjusting transmission timing ofthe transmitter. This improves signal quality and reliability forsignals transmitted between a client device and a BS.

Example embodiments are provided so that this disclosure will bethorough, and will fully convey the scope to those who are skilled inthe art. Numerous specific details are set forth such as examples ofspecific components, devices, and methods, to provide a thoroughunderstanding of embodiments of the present disclosure. It will beapparent to those skilled in the art that specific details need not beemployed, that example embodiments may be embodied in many differentforms and that neither should be construed to limit the scope of thedisclosure. In some example embodiments, well-known procedures,well-known device structures, and well-known technologies are notdescribed in detail.

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a,” “an,” and “the” may be intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. The term “and/or” includes any and all combinations of one ormore of the associated listed items. The terms “comprises,”“comprising,” “including,” and “having,” are inclusive and thereforespecify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof. The method steps,processes, and operations described herein are not to be construed asnecessarily requiring their performance in the particular orderdiscussed or illustrated, unless specifically identified as an order ofperformance. It is also to be understood that additional or alternativesteps may be employed.

Although the terms first, second, third, etc. may be used herein todescribe various elements, components, regions, layers and/or sections,these elements, components, regions, layers and/or sections should notbe limited by these terms. These terms may be only used to distinguishone element, component, region, layer or section from another region,layer or section. Terms such as “first,” “second,” and other numericalterms when used herein do not imply a sequence or order unless clearlyindicated by the context. Thus, a first element, component, region,layer or section discussed below could be termed a second element,component, region, layer or section without departing from the teachingsof the example embodiments.

As used herein, the term module may refer to, be part of, or include: anApplication Specific Integrated Circuit (ASIC); an electronic circuit; acombinational logic circuit; a field programmable gate array (FPGA); aprocessor or a distributed network of processors (shared, dedicated, orgrouped) and storage in networked clusters or datacenters that executescode or a process; other suitable components that provide the describedfunctionality; or a combination of some or all of the above, such as ina system-on-chip. The term module may also include memory (shared,dedicated, or grouped) that stores code executed by the one or moreprocessors.

The term code, as used above, may include software, firmware, byte-codeand/or microcode, and may refer to programs, routines, functions,classes, and/or objects. The term shared, as used above, means that someor all code from multiple modules may be executed using a single(shared) processor. In addition, some or all code from multiple modulesmay be stored by a single (shared) memory. The term group, as usedabove, means that some or all code from a single module may be executedusing a group of processors. In addition, some or all code from a singlemodule may be stored using a group of memories.

The techniques described herein may be implemented by one or morecomputer programs executed by one or more processors. The computerprograms include processor-executable instructions that are stored on anon-transitory tangible computer readable medium. The computer programsmay also include stored data. Non-limiting examples of thenon-transitory tangible computer readable medium are nonvolatile memory,magnetic storage, and optical storage.

Some portions of the above description present the techniques describedherein in terms of algorithms and symbolic representations of operationson information. These algorithmic descriptions and representations arethe means used by those skilled in the data processing arts to mosteffectively convey the substance of their work to others skilled in theart. These operations, while described functionally or logically, areunderstood to be implemented by computer programs. Furthermore, it hasalso proven convenient at times to refer to these arrangements ofoperations as modules or by functional names, without loss ofgenerality.

Unless specifically stated otherwise as apparent from the abovediscussion, it is appreciated that throughout the description,discussions utilizing terms such as “processing” or “computing” or“calculating” or “determining” or “displaying” or the like, refer to theaction and processes of a computer system, or similar electroniccomputing device, that manipulates and transforms data represented asphysical (electronic) quantities within the computer system memories orregisters or other such information storage, transmission or displaydevices.

Certain aspects of the described techniques include process steps andinstructions described herein in the form of an algorithm. It should benoted that the described process steps and instructions could beembodied in software, firmware or hardware, and when embodied insoftware, could be downloaded to reside on and be operated fromdifferent platforms used by real time network operating systems.

The present disclosure also relates to an apparatus for performing theoperations herein. This apparatus may be specially constructed for therequired purposes, or it may comprise a general-purpose computerselectively activated or reconfigured by a computer program stored on acomputer readable medium that can be accessed by the computer. Such acomputer program may be stored in a tangible computer readable storagemedium, such as, but is not limited to, any type of disk includingfloppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-onlymemories (ROMs), random access memories (RAMs), EPROMs, EEPROMs,magnetic or optical cards, application specific integrated circuits(ASICs), or any type of media suitable for storing electronicinstructions, and each coupled to a computer system bus. Furthermore,the computers referred to in the specification may include a singleprocessor or may be architectures employing multiple processor designsfor increased computing capability.

The algorithms and operations presented herein are not inherentlyrelated to any particular computer or other apparatus. Variousgeneral-purpose systems may also be used with programs in accordancewith the teachings herein, or it may prove convenient to construct morespecialized apparatuses to perform the required method steps. Therequired structure for a variety of these systems will be apparent tothose of skill in the art, along with equivalent variations. Inaddition, the present disclosure is not described with reference to anyparticular programming language. It is appreciated that a variety ofprogramming languages may be used to implement the teachings of thepresent disclosure as described herein, and any references to specificlanguages are provided for disclosure of enablement and best mode of thepresent invention.

The present disclosure is well suited to a wide variety of computernetwork systems over numerous topologies. Within this field, theconfiguration and management of large networks comprise storage devicesand computers that are communicatively coupled to dissimilar computersand storage devices over a network, such as the Internet.

The foregoing description of the embodiments has been provided forpurposes of illustration and description. It is not intended to beexhaustive or to limit the disclosure. Individual elements or featuresof a particular embodiment are generally not limited to that particularembodiment, but, where applicable, are interchangeable and can be usedin a selected embodiment, even if not specifically shown or described.The same may also be varied in many ways. Such variations are not to beregarded as a departure from the disclosure, and all such modificationsare intended to be included within the scope of the disclosure.

What is claimed is:
 1. A computer-implemented method comprising:transmitting, by a client device, a pilot signal to a base station;receiving, by the client device from the base station, a time differencefor the pilot signal and a signal quality value for the pilot signal;comparing, by the client device, the time difference to a preselectedvalue; in response to the comparison, generating, by the client device,a complex number based on the time difference; determining, by at leastone selected from the group consisting of a physical layer device (PHY)of the client device and a medium access controller (MAC) of the clientdevice, an offset value based on the complex number and the signalquality value, wherein the offset value comprises a time value; andadjusting, by at least one selected from the group consisting of the PHYof the client device and the MAC of the client device, based on theoffset value, at least one selected from the group consisting of atransmission time of a transmitter of the client device, an activationtime of the transmitter, and a deactivation time of the transmitter. 2.The method of claim 1, wherein the pilot signal is a component of a timedivision multiple access signal comprising the pilot signal and a datasignal.
 3. The method of claim 1, wherein transmitting comprisestransmitting the pilot signal at a frequency between approximately 600and 800 megahertz.
 4. The method of claim 1, wherein comparing comprisescomparing, by at least one selected from the group consisting of the PHYof the client device and the MAC of the client device, the timedifference to a preselected value.
 5. The method of claim 1, wherein thesignal quality value is based on at least one selected from the groupconsisting of a signal-to-noise ratio, a signal-to-interference ratio,and a bit error rate.
 6. A computer-implemented method comprising:receiving, by a client device, a pilot signal from a base station;determining, by the client device, a time difference for the pilotsignal and a signal quality value for the pilot signal; comparing, bythe client device, the time difference to a preselected value; inresponse to the comparison, generating, by the client device, a complexnumber based on the time difference; determining, by at least oneselected from the group consisting of a PHY of the client device and aMAC of the client device, an offset value based on the complex numberand the signal quality value, wherein the offset value comprises a timevalue; and adjusting, by at least one selected from the group consistingof the PHY of the client device and the MAC of the client device, basedon the offset value, at least one selected from the group consisting ofan activation time of a receiver of the client device, and adeactivation time of the receiver.
 7. The method of claim 6, furthercomprising: prior to determining the time difference, sampling, by theclient device, the pilot signal into a plurality of samples.
 8. Themethod of claim 6, further comprising: prior to determining the timedifference, sampling, by the client device, the pilot signal into aplurality of samples; and wherein determining the time difference isbased on an arrival time of a sample of the plurality of samples and apredetermined allocation time.
 9. The method of claim 6, whereingenerating a complex number based on the time difference comprisescalculating a value of a trigonometric function based on the timedifference.
 10. The method of claim 6, wherein determining the offsetvalue based on the complex number and the signal quality value comprisescalculating a product of the complex number and the signal qualityvalue.
 11. A base station comprising: a processor; and a non-transitory,computer-readable medium in communication with the processor and storinginstructions that when executed by the processor, cause the processor toperform operations comprising: receiving, by the base station, a pilotsignal from a client device, determining, by the base station, a timedifference for the pilot signal and a signal quality value for the pilotsignal, comparing, by the base station, the time difference to apreselected value, in response to the comparison, generating, by thebase station, a complex number based on the time difference,determining, by at least one selected from the group consisting of a PHYof the base station and a MAC of the base station, an offset value basedon the complex number and the signal quality value, wherein the offsetvalue comprises a time value, and adjusting, by at least one selectedfrom the group consisting of the PHY of the base station and the MAC ofthe base station, based on the offset value, at least one selected fromthe group consisting of an activation time of a receiver of the basestation and a deactivation time of the receiver.
 12. The base station ofclaim 11, wherein the pilot signal is a component of a time divisionmultiple access signal comprising the pilot signal and a data signal.13. The base station of claim 11, wherein receiving comprises receivingthe pilot signal at a frequency between approximately 600 and 800megahertz.
 14. The base station of claim 11, wherein the operationsfurther comprise: prior to determining the time difference, sampling, bythe base station, the pilot signal into a plurality of samples.
 15. Thebase station of claim 11, wherein the operations further comprise: priorto determining the time difference, sampling, by the base station, thepilot signal into a plurality of samples; and wherein determining thetime difference is based on an arrival time of a sample of the pluralityof samples and a predetermined allocation time.
 16. The base station ofclaim 11, wherein comparing comprises comparing, by at least oneselected from the group consisting of the PHY of the base station andthe MAC of the base station, the time difference to a preselected value.17. The base station of claim 11, wherein generating the complex numberbased on the time difference comprises calculating a value of atrigonometric function based on the time difference.
 18. The basestation of claim 11, wherein determining the offset value based on thecomplex number and the signal quality value comprises calculating aproduct of the complex number and the signal quality value.